package com.industrial.loweff.mapper;

import com.industrial.loweff.domain.CityLevelCdCount;
import com.industrial.loweff.domain.JcQueryParam;
import com.industrial.loweff.domain.LowEfficiencyBenefitEvaluation;
import com.industrial.loweff.domain.SysEnterDiagnosisInfo;
import com.industrial.loweff.domain.vo.IndexResVo;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.annotations.Select;

import java.math.BigDecimal;
import java.util.List;
import java.util.Map;

public interface EnterpriseDiagnosisMapper {
    List<LowEfficiencyBenefitEvaluation> list(JcQueryParam jcQueryParam);

    IndexResVo queryIndexAvgValue(JcQueryParam queryParam);

    /**
     * <p>
     *     查询企业所对应的城市代码
     * </p>
     * @param companyId
     * @return
     */
    Map<String,String> queryCompanyCity(@Param("companyId") String companyId);

    LowEfficiencyBenefitEvaluation queryCompanyIndexValue(@Param("preId") String preId,@Param("years") String years);

    List<CityLevelCdCount> ydssQsCharts(JcQueryParam jcQueryParam);

    List<CityLevelCdCount> ydxsQsCharts(JcQueryParam jcQueryParam);

    List<CityLevelCdCount> nhxsQsCharts(JcQueryParam jcQueryParam);

    List<CityLevelCdCount> pfxsQsCharts(JcQueryParam jcQueryParam);

    List<CityLevelCdCount> yftrQsCharts(JcQueryParam jcQueryParam);

    List<CityLevelCdCount> qyldQsCharts(JcQueryParam jcQueryParam);

    void batchInsertSysEnterDiagnosisInfo(@Param("list") List<SysEnterDiagnosisInfo> parms);

    List<CityLevelCdCount> ydssQsHyCharts(JcQueryParam jcQueryParam);

    List<CityLevelCdCount> ydxsQsHyCharts(JcQueryParam jcQueryParam);

    List<CityLevelCdCount> nhxsQsHyCharts(JcQueryParam jcQueryParam);

    List<CityLevelCdCount> pfxsQsHyCharts(JcQueryParam jcQueryParam);

    List<CityLevelCdCount> yftrQsHyCharts(JcQueryParam jcQueryParam);

    List<CityLevelCdCount> qyldQsHyCharts(JcQueryParam jcQueryParam);

    SysEnterDiagnosisInfo queryJy(JcQueryParam jcQueryParam);

    String selectCompanyUssByCompanyId(@Param("companyId") String companyId);

    /**
     * 查询省级用地税收平均值
     * @param queryParam
     * @return
     */
    List<IndexResVo> queryIndexProvinceYdssAvgValue(JcQueryParam queryParam);

    /**
     * 查询省级用地销售平均值
     * @param queryParam
     * @return
     */
    List<IndexResVo> queryIndexProvinceYdxsAvgValue(JcQueryParam queryParam);

    /**
     * 查询省级单位能耗平均值
     * @param queryParam
     * @return
     */
    List<IndexResVo> queryIndexProvinceDwnhAvgValue(JcQueryParam queryParam);

    /**
     * 查询省级污染物平均值
     * @param queryParam
     * @return
     */
    List<IndexResVo> queryIndexProvinceDwrwAvgValue(JcQueryParam queryParam);

    /**
     * 查询省级研发投入强度平均值
     * @param queryParam
     * @return
     */
    List<IndexResVo> queryIndexProvinceYftrAvgValue(JcQueryParam queryParam);

    /**
     * 查询省级全员劳动平均值
     * @param queryParam
     * @return
     */
    List<IndexResVo> queryIndexProvinceQylgAvgValue(JcQueryParam queryParam);

    List<IndexResVo> queryIndexHyYdxsAvgValue(JcQueryParam queryParam);

    String selectCompanyIndustryTypeByCompanyId(String companyId);

    List<IndexResVo> queryIndexHyQyldAvgValue(JcQueryParam queryParam);

    List<IndexResVo> queryIndexHyYfjfAvgValue(JcQueryParam queryParam);

    List<CityLevelCdCount> dwwrwQsHyCharts(JcQueryParam jcQueryParam);

    List<IndexResVo> queryIndexHyDwWrwAvgValue(JcQueryParam queryParam);

    List<CityLevelCdCount> nhxsHyCharts(JcQueryParam jcQueryParam);

    List<IndexResVo> queryIndexHyNhXsAvgValue(JcQueryParam queryParam);

    List<IndexResVo> queryIndexHyYdssAvgValue(JcQueryParam queryParam);
}
